home *** CD-ROM | disk | FTP | other *** search
/ PC Master 5 / PC MASTER 5.iso / INTERNET / KIT / WIN95 / MSIE30.EXE / ieakjava.exe / classr.exe / com / ms / directX / ddPalette.class (.txt) < prev    next >
Encoding:
Java Class File  |  1997-01-31  |  2.4 KB  |  107 lines

  1. package com.ms.directX;
  2.  
  3. import com.ms.com.IUnknown;
  4. import java.awt.Color;
  5.  
  6. public class ddPalette implements IddPalette {
  7.    public PaletteEntry[] GetPaletteEntries(int var1, int var2, int var3) {
  8.       byte[] var4 = new byte[var3 * 4];
  9.       this.GetEntries(var1, var2, var3, var4);
  10.       PaletteEntry[] var5 = new PaletteEntry[var3];
  11.       var1 &= 2;
  12.       int var6 = 0;
  13.  
  14.       for(int var7 = 0; var7 < var3; ++var7) {
  15.          var5[var7] = new PaletteEntry(var4, var6, var1);
  16.          var6 += var1 == 0 ? 4 : 8;
  17.       }
  18.  
  19.       return var5;
  20.    }
  21.  
  22.    public native void InternalSetObject(IUnknown var1);
  23.  
  24.    public native IUnknown InternalGetObject();
  25.  
  26.    public native void InternalAttachDD(dDraw var1);
  27.  
  28.    public native void GetEntries(int var1, int var2, int var3, byte[] var4);
  29.  
  30.    public native void Initialize(dDraw var1);
  31.  
  32.    public native void SetEntries(int var1, int var2, int var3, byte[] var4);
  33.  
  34.    byte[] convertFromColor(Color[] var1) {
  35.       int var2 = var1.length;
  36.       byte[] var3 = new byte[var2 * 4];
  37.       int var4 = 0;
  38.  
  39.       for(int var5 = 0; var5 < var2; ++var5) {
  40.          var3[var4++] = (byte)var1[var5].getRed();
  41.          var3[var4++] = (byte)var1[var5].getGreen();
  42.          var3[var4++] = (byte)var1[var5].getBlue();
  43.          var3[var4++] = 0;
  44.       }
  45.  
  46.       return var3;
  47.    }
  48.  
  49.    public void SetEntries(int var1, int var2, int var3, Color[] var4) {
  50.       byte[] var5 = this.convertFromColor(var4);
  51.       this.SetEntries(var1, var2, var3, var5);
  52.    }
  53.  
  54.    public Color[] GetColorEntries(int var1, int var2, int var3) {
  55.       byte[] var4 = new byte[var3 * 4];
  56.       this.GetEntries(var1, var2, var3, var4);
  57.       Color[] var5 = new Color[var3];
  58.       int var6 = 0;
  59.  
  60.       for(int var7 = 0; var7 < var3; ++var7) {
  61.          var5[var7] = new Color(var4[var6], var4[var6 + 1], var4[var6 + 2]);
  62.          var6 += 4;
  63.       }
  64.  
  65.       return var5;
  66.    }
  67.  
  68.    byte[] convertFromPalette(int var1, PaletteEntry[] var2) {
  69.       int var3 = var2.length;
  70.       int var4 = var3 * 4;
  71.       if ((var1 & 2) != 0) {
  72.          var4 *= 2;
  73.       }
  74.  
  75.       byte[] var5 = new byte[var4];
  76.       int var6 = 0;
  77.       if ((var1 & 2) != 0) {
  78.          for(int var8 = 0; var8 < var3; ++var8) {
  79.             var5[var6++] = (byte)(var2[var8].peRed & 255);
  80.             var5[var6++] = (byte)(var2[var8].peRed >> 8 & 255);
  81.             var5[var6++] = (byte)(var2[var8].peGreen & 255);
  82.             var5[var6++] = (byte)(var2[var8].peGreen >> 8 & 255);
  83.             var5[var6++] = (byte)(var2[var8].peBlue & 255);
  84.             var5[var6++] = (byte)(var2[var8].peBlue >> 8 & 255);
  85.             var5[var6++] = (byte)(var2[var8].peFlags & 255);
  86.             var5[var6++] = (byte)(var2[var8].peFlags >> 8 & 255);
  87.          }
  88.       } else {
  89.          for(int var9 = 0; var9 < var3; ++var9) {
  90.             var5[var6++] = (byte)(var2[var9].peRed & 255);
  91.             var5[var6++] = (byte)(var2[var9].peGreen & 255);
  92.             var5[var6++] = (byte)(var2[var9].peBlue & 255);
  93.             var5[var6++] = (byte)(var2[var9].peFlags & 255);
  94.          }
  95.       }
  96.  
  97.       return var5;
  98.    }
  99.  
  100.    public void SetEntries(int var1, int var2, int var3, PaletteEntry[] var4) {
  101.       byte[] var5 = this.convertFromPalette(var1, var4);
  102.       this.SetEntries(var1, var2, var3, var5);
  103.    }
  104.  
  105.    public native int GetCaps();
  106. }
  107.